RF-based micro-motion tracking for gesture tracking and recognition

ABSTRACT

This document describes techniques for radio frequency (RF) based micro-motion tracking. These techniques enable even millimeter-scale hand motions to be tracked. To do so, radar signals are used from radar systems that, with conventional techniques, would only permit resolutions of a centimeter or more.

RELATED APPLICATIONS

This application is a continuation application claiming priority under 35 U.S.C. § 120 to U.S. patent application Ser. No. 16/252,477, filed Jan. 18, 2019, that is a continuation application and claims priority under 35 U.S.C. § 120 to U.S. patent application Ser. No. 15/142,689, filed Apr. 29, 2016, that claims priority under 35 U.S.C. § 119(e) to U.S. Patent Provisional Application Ser. No. 62/155,357 filed Apr. 30, 2015, and U.S. Patent Provisional Application Ser. No. 62/167,823 filed May 28, 2015, the disclosures of which are incorporated by reference herein in their entireties.

BACKGROUND

Small-screen computing devices continue to proliferate, such as smartphones, computing bracelets, rings, and watches. Like many computing devices, these small-screen devices often use virtual keyboards to interact with users. On these small screens, however, many people find interacting through virtual keyboards to be difficult, as they often result in slow and inaccurate inputs. This frustrates users and limits the applicability of small-screen computing devices.

To address this problem, optical finger- and hand-tracking techniques have been developed, which enable gesture tracking not made on the screen. These optical techniques, however, have been large, costly, or inaccurate thereby limiting their usefulness in addressing usability issues with small-screen computing devices. Other conventional techniques have also been attempted with little success, including radar-tracking systems. These radar tracking systems struggle to determine small gesture motions without having large, complex, or expensive radar systems due to the resolution of the radar tracking system being constrained by the hardware of the radar system.

SUMMARY

This document describes techniques for radio frequency (RF) based micro-motion tracking. These techniques enable even millimeter-scale hand motions to be tracked. To do so, radar signals are used from radar systems that, with conventional techniques, would only permit resolutions of a centimeter or more.

This summary is provided to introduce simplified concepts concerning RF-based micro-motion tracking, which is further described below in the Detailed Description. This summary is not intended to identify essential features of the claimed subject matter, nor is it intended for use in determining the scope of the claimed subject matter.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of techniques and devices for RF-based micro-motion tracking are described with reference to the following drawings. The same numbers are used throughout the drawings to reference like features and components:

FIG. 1 illustrates a conventional system's hardware-constrained resolution.

FIG. 2 illustrates an example environment in which techniques enabling RF-based micro-motion tracking may be embodied. The environment illustrates a fairly simple radar system through which techniques for micro-motion tracking can overcome hardware limitations of conventional radar systems, such as those illustrated in FIG. 1 .

FIG. 3 illustrates a computing device through which determination of RF-based micro-motion tracking can be enabled.

FIG. 4 illustrates the fairly simple radar system of FIG. 2 along with a hand acting within the provided radar field.

FIG. 5 illustrates a velocity profile, a relative velocity chart, and a relative displacement chart for points of a hand.

FIG. 6 illustrates an example gesture determined through RF-based micro-motion tracking, the example gesture having a micro-motion of a thumb against a finger, similar to rolling a serrated wheel of a traditional mechanical watch.

FIG. 7 illustrates an example method enabling gesture recognition through RF-based micro-motion tracking.

FIG. 8 illustrates an example gesture in three sub-gesture steps, the gesture effective to press a virtual button.

FIG. 9 illustrates an example rolling micro-motion gesture in four steps, the rolling micro-motion gesture permitting fine motion and control through RF-based micro-motion tracking.

FIG. 10 illustrates an example computing system embodying, or in which techniques may be implemented that enable use of, RF-based micro-motion tracking.

DETAILED DESCRIPTION Overview

Techniques are described herein that enable RF-based micro-motion tracking. The techniques track millimeter-scale hand motions from radar signals, even from radar systems with a hardware-constrained conventional resolution that is coarser than the tracked millimeter-scale resolution.

A gesturing hand is a complex, non-rigid target with multiple dynamic components. Because of this, the range and velocity of hand sub-components, such as finger tips, a palm, or a thumb, are typically sub-resolution limits of conventional hardware. Thus, conventional hardware must be large, expensive, or complex to track small motions. Even for those conventional hardware that can track small motions, for real-time gesture-recognition applications, tracking algorithms are computationally constrained.

Consider a conventional system's hardware-constrained resolution, illustrated in FIG. 1 . Here a hardware-constrained spatial resolution 102 consists of a cross-range resolution 104 and a range resolution 106. The cross-range resolution 104 is dependent on an antenna-beam width 108 and the range resolution 106 is dependent on a bandwidth 110, both of which are based on the hardware of the conventional radar system. The bandwidth 110 can be expressed as a pulse width or a wavelength.

To gain a better resolution, multiple antennas are often used in conventional radar systems, increasing complexity and cost. This is shown with a radar field 112 provided by a conventional radar system 114 with three separate radar-emitting elements 116 and antennas 118. Reflections are received from a hand 120 acting within the radar field 112 for each of the separate radar-emitting elements 116. Thus, each of twelve elements 122 are constrained at their size by the radar system's hardware. Note that a micro-motion of the hand 120, such as moving an index-finger against a thumb, would be within a particular element 122-1 of the elements 122. In such a case, the conventional system and techniques cannot determine that the micro-motion was made.

Contrast FIG. 1 with FIG. 2 , which illustrates one environment 200 in which techniques for RF-based micro-motion tracking can overcome hardware limitations of conventional radar systems. In this illustration, a relatively simple radar system 202 is shown, having a single radar-emitting element 204 and a single antenna element 206. Contrast the single radar-emitting element 204 with the multiple radar-emitting elements 116 of FIG. 1 , and the single antenna element 206 with the multiple antennas 118 of FIG. 1 . Here the simple radar system 202 is simpler, and likely less expensive, smaller, or less complex than the conventional radar system 114. Further, the conventional radar system 114 cannot determine micro-motions of the hand 120 that require a higher resolution than permitted by the size of the elements 122, even with the conventional radar system 114's greater cost, size, or complexity.

As noted, radar systems have hardware-parameter-based displacement-sensing resolution limits for conventional techniques. These limits are based on parameters of the hardware of the system, such that a resolution of the simple radar system 202 has a range resolution 208 and cross-range resolution 210, for a hardware-constrained spatial resolution 212 (shown with three examples). As described below, however, the RF-based micro-motion tracking techniques enable micro-motion tracking of motions that are smaller, and thus a resolution that is finer, than the hardware-constrained limitations would conventionally suggest. Thus, the techniques permit a resolution of the relative displacement that is finer than the wavelength or beam width of the radar system.

This document now turns to an example computing device in which RF-based micro-motion tracking can be used, and then follows with an example method and gestures, and ends with an example computing system.

Example Computing Device

FIG. 3 illustrates a computing device through which RF-based micro-motion tracking can be enabled. Computing device 302 is illustrated with various non-limiting example devices, desktop computer 302-1, computing watch 302-2, smartphone 302-3, tablet 302-4, computing ring 302-5, computing spectacles 302-6, and microwave 302-7, though other devices may also be used, such as home automation and control systems, entertainment systems, audio systems, other home appliances, security systems, netbooks, automobiles, and e-readers. Note that the computing device 302 can be wearable, non-wearable but mobile, or relatively immobile (e.g., desktops and appliances).

The computing device 302 includes one or more computer processors 304 and computer-readable media 306, which includes memory media and storage media. Applications and/or an operating system (not shown) embodied as computer-readable instructions on computer-readable media 306 can be executed by processors 304 to provide some of the functionalities described herein. The computer-readable media 306 also includes a micro-motion tracking module 308 and a recognition module 310, described below.

The computing device 302 may also include one or more network interfaces 312 for communicating data over wired, wireless, or optical networks and a display 314. The network interface 312 may communicate data over a local-area-network (LAN), a wireless local-area-network (WLAN), a personal-area-network (PAN), a wide-area-network (WAN), an intranet, the Internet, a peer-to-peer network, point-to-point network, a mesh network, and the like. The display 314 can be integral with the computing device 302 or associated with it, such as with the desktop computer 302-1.

The computing device 302 may also include or be associated with a radar system, such as the radar system 202 of FIG. 2 , including the radar-emitting element 204 and the antenna element 206. As noted above, this radar system 202 can be simpler, less costly, or less complex than conventional radar systems that still cannot, with conventional techniques, determine micro motions in the millimeter scale.

The micro-motion tracking module 308 is configured to extract relative dynamics from a radar signal representing a superposition of reflections of two or more points of a hand within a radar field. Consider in more detail the radar system 202 of FIG. 2 at environment 400 of FIG. 4 , where the radar system 202 provides a radar field 402 in which a hand 404 may act. This hand 404 has various points of interest, some that move toward the radar antenna element 206, some that move away, and some that are immobile. This is illustrated at a thumb point 406, an index-finger point 408, and a knuckle point 410. Assume that for a micro-motion gesture, that the thumb point 406 is moving away from the antenna element 206, that the index-finger point 408 is moving toward the antenna element 206, and that the knuckle point 410 is immobile.

In more detail, for each of these points the micro-motion tracking module 308 may determine their relative velocity and energy. Thus, assume that the velocity of the thumb point 406 is 1.7 meters per second away, the index-finger point 408 is 2.1 meters per second toward, and the knuckle point 410 is zero meters per second. The micro-motion tracking module 308 determines a velocity profile for these points of the hand using the radar signal.

Consider, for example, FIG. 5 , which illustrates a velocity profile 502, showing the velocity and energy for three points of hand 404. The velocity profile 502 shows, in arbitrary units, velocity vs energy, with higher energy measurements for the thumb point 406, the index-finger point 408, and the knuckle point 410. The velocity axis shows the knuckle point 410 not moving relative the antenna element 206, but a movement toward and away for the thumb point 406 and the index-finger point 408. The absolute velocity for each point is shown for clarity but is not required for the techniques, relative velocity is sufficient, and can use lighter-weight processing than determining absolute velocities and then comparing them to determine the relative velocity.

With this velocity profile 502, and other prior-determined or later-determined velocity profiles, the techniques can determine relative velocities between the points of the hand 404. Here the highest relative velocity is between the thumb point 406 and the index-finger point 408. The micro-motion tracking module 308 may determine a relative velocity (and then displacement) between the thumb point 406 and the knuckle point 410 or the index-finger point 408, though the relative displacement between the thumb point 406 and the index-finger point 408 is the largest relative displacement, which can improve gesture recognition and fineness of control. This resolution, however, may also or instead be better against other points, such as in cases where noise or other signal quality concerns are present for a point or points of the hand 404.

As noted, the velocity profile 502 indicates energies of each point of the hand 404. This energy is a measure of reflected energy intensity as a function of target range from each point to the emitter or antenna element, e.g., a radial distance from the radar-emitting element. A time delay between the transmitted signal and the reflection is observed through Doppler frequency, and thus the radial velocity is determined, and then integrated for radial distance. This observation of Doppler frequency can be through a range-Doppler-time data cube for the radar signal, though such a format is not required. Whatever the form for the data of the radar signal having the superposition of reflections of the points, integrating the relative velocities can quantitatively combine the Doppler-determined relative dynamics and an unwrapped signal phase of the radar signal. Optionally or in addition, an extended Kalman filter may be used to incorporate raw phase with the Doppler centroid for the point of the hand, which allows for nonlinear phase unwrapping.

In more detail, the following equations represent a manner in which to determine the velocity profile 502. Equation 1 represents incremental changes in phase as a function of incremental change in distance over a time period. More specifically, φ is phase, and thus Δφ(t,T) is change in phase. r_(i) is distance, Δr_(i) is displacement, and λ is wavelength, thus Δr_(i)(t,T)/λ is change in displacement over wavelength. Each incremental change in phase equates to four π of the displacement change. Δφ(t,T)=4πΔr _(i)(t,T)/λ  Equation 1

Equation 2 represents frequency, f_(Doppler,i)(T), which is proportional to the time derivative of the phase, ½πdφ(t,T)/dT. Then, plugging in the time derivative of the displacement and wavelength, 2/λdr(t,T)/dT, results in velocity, v, again over wavelength. f _(Doppler,i)(T)=½πdφ(t,T)/dT=2/λdr(t,T)/dT=2v(T)/λ  Equation 2

Equations 1 and 2 show the relationship between incremental velocity, such as points of a hand making micro-motions, to how this is shown in the signal reflected from those points of the hand.

Equation 3 shows how to estimate the frequency of the micro motions. The techniques calculate a Doppler spectrum using Doppler centroids, f_(Doppler,centroid)(T), which shows how much energy is at each of the frequencies. The techniques pull out each of the frequencies that corresponds to each of the micro-motions using a centroid summation, Σ_(f)fF(f). f _(Doppler,centroid)(T)=Σ_(f) fF(f)  Equation 3

Thus, the techniques build a profile of energies, such as the example velocity profile 502 of FIG. 2 , which are moving at various velocities, such as the thumb point 406, the index-finger point 408, and the knuckle point 410. From this profile, the techniques estimate particular micro-motions as being at particular energies in the profile as described below.

Relative velocities chart 504 illustrates a relative velocity 506 over time. While shown for clarity of explanation, absolute thumb velocity 508 of the thumb point 406 and absolute index-finger velocity 510 of the index-finger 408 are not required. The relative velocity 506 can be determined without determining the absolute velocities. Showing these, however, illustrates the relative velocity between these velocities, and how it can change over time (note the slowdown of the thumb point 406 from 2.1 units to 1.9 units over the six time units).

With the relative velocities 506 determined over the six time units, a relative displacement can then be determined by integrating the relative velocities. This is shown with relative displacement chart 512, which illustrates a displacement trajectory 514. This displacement trajectory 514 is the displacement change of the thumb point 406 relative the index-finger point 408 over the six time units. Thus, the thumb point 406 and the index-finger point 408 move apart over the six time units by 24 arbitrary displacement units.

In some cases, the micro-motion tracking module 308 determines a weighted average of the relative velocities and then integrates the weighted averages to find their relative displacement. The weighted average can be weighted based on velocity readings having a higher probability of an accurate reading, lower noise, or other factors.

As shown in the example of FIG. 5 , the techniques enable tracking of micro-motions, including using a low-bandwidth RF signal. This permits tracking with standard RF equipment, such as Wi-Fi routers, rather than having to change RF systems, or add complex or expensive radar systems.

Returning to FIG. 3 , the recognition module 310 is configured to determine, based on a relative displacement of points on a hand, a gesture made by the hand. The recognition module 310 may then pass the gesture to an application or device.

Assume, for example, that the gesture determined is a micro-motion of a thumb against a finger, similar to rolling a serrated wheel of a traditional mechanical watch. This example is illustrated in FIG. 6 , which shows a start of the micro-gesture at start position 602, and an end of the micro-gesture at end position 604. Note that a movement 606 is made from the start to the end, but is not shown at intermediate positions for visual brevity. At the start position 602, a thumb point 608 and an index-finger point 610 positioned relative to each other with an end of the thumb at a tip of the finger. At the end position 604, the thumb, and thus the thumb point 608, has moved a few millimeters across the finger, and thus index-finger point 610, are each displaced relative the other by those few millimeters. The techniques are configured to track this gesture at finer resolutions than multiple millimeters, but this shows the start and end, and not intermediate measurements made.

With the displacement between the thumb point 608 and the index-finger point 610 made by the micro-motion tracking module 308, the recognition module 310 determines the gesture, and passes this gesture (generally as multiple sub-gestures as a complete gesture having sub-gesture portions is made) to an application—here to an application of the smart watch, which in turn alters user interface 612 to scroll up text being displayed (scrolling shown at scroll arrow 614 and results shown at starting text 616 and ending text 618). Tracked gestures can be large or small—millimeter scale is not required, nor is use of a single hand or even a human hand, as devices, such as robotic arms tracked to determine control for the robot, can be tracked. Thus, the micro-motion tracking module 308 may track micro-gestures having millimeter or finer resolution and a maximum of five centimeters in total relative displacement, or track a user's arm, hand or fingers relative to another hand, arm, or object, or larger gestures, such as multi-handed gestures with relative displacements of even a meter in size.

Example Method

FIG. 7 depicts a method 700 that recognizes gestures using RF-based micro-motion tracking. The method 700 receives a radar signal from a radar system in which a hand makes a gesture, determines a displacement at a finer resolution than conventional techniques permit based on the parameters of the radar system, and then, based on this displacement, determine gestures, even micro-motion gestures in a millimeter scale. This method is shown as sets of blocks that specify operations performed but are not necessarily limited to the order or combinations shown for performing the operations by the respective blocks. In portions of the following discussion reference may be made to FIGS. 2-6, 8, and 9 , reference to which is made for example only. The techniques are not limited to performance by one entity or multiple entities operating on one device, or those described in these figures.

At 702, a radar field is provided, such as shown in FIG. 2 . The radar field can be provided by a simple radar system, including existing WiFi radar, and need not use complex, multi-emitter or multi-antenna, or narrow-beam scanning radars. Instead, a broad beam, full contiguous radar field can be used, such as 57-64 or 59-61 GHz, though other frequency bands, even sounds waves, can be used.

At 704, a radar signal representing a superposition of reflections of multiple points of a hand within the radar field is received. As noted, this can be received from as few as a single antenna. Each of the points of the hand has a movement relative to the emitter or antenna, and thus a movement relative to each other point. As few as two points can be represented and analyzed as noted below.

At 706, the radar signal can be filtered, such as with a Moving Target Indicator (MTI) filter. Filtering the radar signal is not required, but can remove noise or help to locate elements of the signal, such as those representing points having greater movement than others.

At 708, a velocity profile is determined from the radar signal. Examples of this determination are provided above, such as in FIG. 5 .

At 710, relative velocities are extracted from the velocity profile. To determine multiple relative velocities over time, one or more prior-determined or later-determined velocity profiles are also determined. Thus, operations 704 and 708 can be repeated by the techniques, shown with a repeat arrow in FIG. 7 .

At 712, a displacement trajectory is determined by integrating the multiple relative velocities. Relative velocities extracted from multiple velocity profiles over multiple times are integrated. An example of this is shown in FIG. 5 , at the relative displacement chart 512.

At 714, a gesture is determined based on the displacement trajectory between the multiple points of the hand. As noted above, this gesture can be fine and small, such as a micro-gesture performed by one hand, or multiple hands or objects, or of a larger size.

At 716, the gesture is passed to an application or device. The gesture, on receipt by the application or device, is effective to control the application or device, such as to control or alter a display, function, or capability of the application or device. The device can be remote, peripheral, or the system on which the method 700 is performed.

This determined displacement trajectory shows a displacement in the example of FIG. 6 between a point at a knuckle and another point at a fingertip, both of which are moving. It is not required that the RF-based micro-motion tracking techniques track all points of the hand, or even many points, or even track two points in three-dimensional space. Instead, determining displacement relative from one point to another can be sufficient to determine gestures, even those of one millimeter or finer.

Through operations of method 700, relative dynamics are extracted from the radar signal representing the superposition of the reflections of the multiple points of the hand within the radar field. These relative dynamics indicate a displacement of points of the hand relative one to another, from which micro-motion gestures can be determined. As noted above, in some cases extracting relative dynamics from the superposition determines micro-Doppler centroids for the points. These micro-Doppler centroids enable computationally light super-resolution velocity estimates to be determined. Thus, the computational resources needed are relatively low compared to conventional radar techniques, further enabling use of these RF-based micro-motion techniques in small or resource-limited devices, such as some wearable devices and appliances. Not only can these techniques be used on resource-limited devices, but the computationally light determination can permit faster response to the gesture, such as in real time as a small, fine gesture (e.g., a micro-gesture) is made to make small, fine control of a device.

Further, the RF-based micro-motion techniques, by using micro-Doppler centroids, permits greater robustness to noise and clutter than use of Doppler profile peaks. To increase resolution, the micro-motion tracking module 308 may use the phase change of the radar signal to extract millimeter and sub-millimeter displacements for high-frequency movements of the points.

Example Gestures

The RF-based micro-motion techniques described in FIGS. 2-7 enable gestures even in the millimeter or sub-millimeter scale. Consider, for example, FIGS. 8 and 9 , which illustrate two such gestures.

FIG. 8 illustrates a gesture having a resolution of 10 or fewer millimeters, in three sub-gesture steps. Each of the steps can be tracked by the micro-motion module 308, and sub-gestures determined by the recognition module 310. Each of these sub-gestures can enable control, or completion of the last of the sub-gestures may be required prior to control being made. This can be driven by the application receiving the gesture or the recognition module 310, as the recognition module 310 may have parameters from the application or device intended to receive the gesture, such as data indicating that only completion of contact of a thumb and finger should be passed to the application or device.

This is the case for FIG. 8 , which shows a starting position 802 of two points 804 and 806 of a hand 808, with a user interface showing an un-pressed virtual button 810. A first sub-gesture 812 is shown where the two points 804 and 806 (fingertip and thumb tip) move closer to each other. A second sub-gesture 814 is also shown where the two points 804 and 806 move even closer. The third sub-gesture 816 completes the gesture where the two points 804 and 806 touch or come close to touching (depending on if the points 804 and 806 are at exactly the tips of the finger and thumb or are offset). Here assume that the micro-motion tracking module 308 determines displacements between the points 804 and 806 at each of the three sub-gestures 812, 814, and 816, and passes these to the recognition module 310. The recognition module 310 waits to pass the complete gesture when the points touch or nearly so, at which point the application receives the gesture and indicates in the user interface that the button has been pressed, shown at pressed virtual button 818.

By way of further example, consider FIG. 9 , which illustrates a rolling micro-motion gesture 900. The rolling micro-motion gesture 900 involves motion of a thumb 902 against an index-finger 904, with both the thumb 902 and the index-finger 904 moving in roughly opposite directions—thumb direction 906 and index-finger direction 908.

The rolling micro-motion gesture 900 is shown at a starting position 910 and with four sub-gestures positions 912, 914, 916, and 918, though these are shown for visual brevity, as many more movements, at even sub-millimeter resolution through the full gesture, can be recognized. To better visualize an effect of the rolling micro-motion gesture 900, consider a marked wheel 920. This marked wheel 920 is not held by the thumb 902 and the index-finger 904, but is shown to aid the reader in seeing ways in which the gesture, as it is performed, can be recognized and used to make fine-resolution control, similar to the way in which a mark 922 moves as the marked wheel 920 is rotated, from a start point at mark 922-1, to mark 922-2, to mark 922-3, to mark 922-4, and ending at mark 922-5.

As the rolling micro-motion gesture 900 is performed, the micro-motion tracking module 308 determines displacement trajectories between a point or points of each of the thumb 902 and the index-finger 904, passes these to the gesture module 310, which in turn determines a gesture or portion thereof being performed. This gesture is passed to a device or application, which is thereby controlled by the micro-motion gesture. For this type of micro-motion, an application may advance through media being played (or reverse if the gesture is performed backwards), scroll through text or content in a display, turn up volume for music, a temperature for a thermostat, or another parameter. Further, because the RF-based micro-motion techniques have a high resolution and light computational requirements, fine motions in real time can be recognized, allowing a user to move her thumb and finger back and forth to easily settle on an exact, desired control, such as a precise volume 34 on a scale of 100 or to precisely find a frame in a video being played.

Example Computing System

FIG. 10 illustrates various components of an example computing system 1000 that can be implemented as any type of client, server, and/or computing device as described with reference to the previous FIGS. 2-8 to implement RF-based micro-motion tracking.

The computing system 1000 includes communication devices 1002 that enable wired and/or wireless communication of device data 1004 (e.g., received data, data that is being received, data scheduled for broadcast, data packets of the data, etc.). Device data 1004 or other device content can include configuration settings of the device, media content stored on the device, and/or information associated with a user of the device (e.g., an identity of an actor performing a gesture). Media content stored on the computing system 1000 can include any type of audio, video, and/or image data. The computing system 1000 includes one or more data inputs 1006 via which any type of data, media content, and/or inputs can be received, such as human utterances, interactions with a radar field, user-selectable inputs (explicit or implicit), messages, music, television media content, recorded video content, and any other type of audio, video, and/or image data received from any content and/or data source.

The computing system 1000 also includes communication interfaces 1008, which can be implemented as any one or more of a serial and/or parallel interface, a wireless interface, any type of network interface, a modem, and as any other type of communication interface. Communication interfaces 1008 provide a connection and/or communication links between the computing system 1000 and a communication network by which other electronic, computing, and communication devices communicate data with the computing system 1000.

The computing system 1000 includes one or more processors 1010 (e.g., any of microprocessors, controllers, and the like), which process various computer-executable instructions to control the operation of the computing system 1000 and to enable techniques for, or in which can be embodied, RF-based micro-motion tracking. Alternatively or in addition, the computing system 1000 can be implemented with any one or combination of hardware, firmware, or fixed logic circuitry that is implemented in connection with processing and control circuits, which are generally identified at 1012. Although not shown, the computing system 1000 can include a system bus or data transfer system that couples the various components within the device. A system bus can include any one or combination of different bus structures, such as a memory bus or memory controller, a peripheral bus, a universal serial bus, and/or a processor or local bus that utilizes any of a variety of bus architectures.

The computing system 1000 also includes computer-readable media 1014, such as one or more memory devices that enable persistent and/or non-transitory data storage (i.e., in contrast to mere signal transmission), examples of which include random access memory (RAM), non-volatile memory (e.g., any one or more of a read-only memory (ROM), flash memory, EPROM, EEPROM, etc.), and a disk storage device. A disk storage device may be implemented as any type of magnetic or optical storage device, such as a hard disk drive, a recordable and/or rewriteable compact disc (CD), any type of a digital versatile disc (DVD), and the like. The computing system 1000 can also include a mass storage media device (storage media) 1016.

The computer-readable media 1014 provides data storage mechanisms to store the device data 1004, as well as various device applications 1018 and any other types of information and/or data related to operational aspects of the computing system 1000. For example, an operating system 1020 can be maintained as a computer application with the computer-readable media 1014 and executed on the processors 1010. The device applications 1018 may include a device manager, such as any form of a control application, software application, signal-processing and control module, code that is native to a particular device, an abstraction module or gesture module and so on. The device applications 1018 also include system components, engines, or managers to implement RF-based micro-motion tracking, such as the micro-motion tracking module 308 and the recognition module 310.

The computing system 1000 may also include, or have access to, one or more of radar systems, such as the radar system 202 having the radar-emitting element 204 and the antenna element 206. While not shown, one or more elements of the micro-motion tracking module 308 or the recognition module 310 may be operated, in whole or in part, through hardware or firmware.

CONCLUSION

Although techniques using, and apparatuses including, RF-based micro-motion tracking have been described in language specific to features and/or methods, it is to be understood that the subject of the appended claims is not necessarily limited to the specific features or methods described. Rather, the specific features and methods are disclosed as example implementations of ways in which to determine RF-based micro-motion tracking. 

We claim:
 1. A computer-implemented method for gesture recognition, the computer-implemented method comprising: receiving first reflections of a radar field off first and second points of a single non-rigid target at a first time, the first and second points corresponding to first and second Doppler centroids, respectively, the first and second Doppler centroids having higher energies than Doppler centroids corresponding to another point of the single non-rigid target, and the first and second points moving relative to one another within the radar field; determining, based on the first reflections, a first relative velocity between the first and second points at the first time; receiving second reflections of the radar field off the first and second points at a second time; determining, based on the second reflections, a second relative velocity between the first and second points at the second time; and determining, based on the first and second relative velocities, a gesture performed by the single non-rigid target.
 2. The computer-implemented method of claim 1, further comprising determining, based on the first and second relative velocities, a change in displacement between the first and second points between the first and second times, wherein determining the gesture is based further on the change in displacement.
 3. The computer-implemented method of claim 1, further comprising identifying, based on Doppler centroids, the first and second points from the other point of the single non-rigid target within the first and second reflections.
 4. The computer-implemented method of claim 1, wherein the energies correspond to respective ranges to the first and second points and the other point of the single non-rigid target.
 5. The computer-implemented method of claim 1, further comprising identifying, based on a moving target indicator filter, the first and second points from the other point of the single non-rigid target within the first and second reflections.
 6. The computer-implemented method of claim 1, further comprising passing the gesture to an application or device effective to control or alter a display, function, or capability associated with the application or the device.
 7. The computer-implemented method of claim 1, further comprising determining Doppler frequencies for the first and second points at the first and second times, wherein the Doppler frequencies for the first and second points at the first and second times are determined to have one or more of: high accuracy or low noise compared to other determined Doppler frequencies.
 8. The computer-implemented method of claim 1, further comprising creating a range-Doppler-time data cube for the single non-rigid target, wherein the determining the gesture is based further on the range-Doppler-time data cube.
 9. The computer-implemented method of claim 1, wherein a resolution of the gesture recognition is finer than a wavelength of the radar field.
 10. The computer-implemented method of claim 1, wherein the single non-rigid target is a hand.
 11. The computer-implemented method of claim 1, wherein determining the first relative velocity and the second relative velocity does not include determining an absolute velocity of the first and second points.
 12. The computer-implemented method of claim 1, wherein the radar field is a broad beam, fully contiguous radar field.
 13. An apparatus comprising: at least one computer processor; a radar system comprising: at least one radar-emitting element configured to provide a radar field; and one or more antenna elements configured to receive radar signals representing reflections of the radar field off points of a single non-rigid object within the radar field; and one or more computer-readable storage media having instructions stored thereon that, responsive to execution by the processor, cause the at least one computer processor to: receive first reflections of the radar field off first and second points of the single non-rigid target at a first time, the first and second points corresponding to first and second Doppler centroids, respectively, the first and second Doppler centroids having higher energies than Doppler centroids corresponding to another point of the single non-rigid target, and the first and second points moving relative to one another within the radar field; determine, based on the first reflections, a first relative velocity between the first and second points at the first time; receive second reflections of the radar field off the first and second points at a second time; determine, based on the second reflections, a second relative velocity between the first and second points; and determine, based on the first and second relative velocities, a gesture performed by the single non-rigid target.
 14. The apparatus of claim 13, wherein: the instructions further cause the at least one computer processor to determine, based on the first and second relative velocities, a change in displacement between the first and second points between the first and second times; and determining the gesture is based further on the change in the displacement.
 15. The apparatus of claim 13, wherein the instructions further cause the at least one computer processor to identify, based on a moving target indicator filter, the first and second points from the other point of the single non-rigid target within the first and second reflections.
 16. The apparatus of claim 13, wherein the instructions further cause the at least one computer processor to pass the gesture to an application executing on the apparatus or to a device effective to control or alter a display, function, or capability associated with the application or the device.
 17. The apparatus of claim 13, wherein: the instructions further cause the at least one computer processor to determine Doppler frequencies for the first and second points at the first and second times; and the Doppler frequencies for the first and second points at the first and second times are determined to have one or more of: high accuracy Doppler frequencies or low noise Doppler frequencies.
 18. The apparatus of claim 13, wherein a resolution of the gesture recognition is finer than a wavelength of the radar field.
 19. The apparatus of claim 13, wherein the radar field is a broad beam, fully contiguous radar field.
 20. The apparatus of claim 13, wherein the instructions further cause the at least one computer processor to determine the first relative velocity and the second relative velocity without determining an absolute velocity of the first and second points. 